/**
 * 使用部署令牌换取部署访问Token
 *
 * 输入参数:
 *
 * 输出参数:
 *
 */
(() => {
  // 私有区域
  const expires = 60;   // 1分钟过期

  return function ({ Key }) {
    // 验证输入参数
    if (!Key) throw Error("缺少授权令牌");
    let { rows: lps } = A.db.execute('KERNEL', "SELECT ID FROM BSSQ WHERE LP=? AND JULIANDAY(DATETIME('NOW', 'LOCALTIME'))-JULIANDAY(CJSJ)<=YXQ", [Key]);
    if (lps.length === 0) throw Error("授权令牌无效");

    // 处理逻辑
    let token = A.jwt.create({ UID: Key }, expires);

    // 返回结果
    return { token, expires };
  };
})()